home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2011 November
/
CHIP_2011_11.iso
/
Programy
/
Inne
/
Gry
/
Carnage_Contest
/
scripts
/
CC Original
/
movement
/
Swap.lua
< prev
next >
Wrap
Text File
|
2010-09-02
|
3KB
|
88 lines
--------------------------------------------------------------------------------
-- Weapon Swap
-- Original Carnage Contest Weapon
-- Script by DC, September 2010, www.UnrealSoftware.de
--------------------------------------------------------------------------------
-- Setup Tables
if cc==nil then cc={} end
cc.swap={}
-- Load & Prepare Ressources
cc.swap.gfx_wpn=loadgfx("weapons/rc.bmp") -- Weapon Image
setmidhandle(cc.swap.gfx_wpn)
cc.swap.gfx_icon=loadgfx("weapons/swap.png") -- Weapon Icon
setmidhandle(cc.swap.gfx_icon)
cc.swap.sfx_superteleport=loadsfx("teleport.wav") -- Weapon superteleport
--------------------------------------------------------------------------------
-- Weapon: Swap
--------------------------------------------------------------------------------
cc.swap.id=addweapon("cc.swap","Swap",cc.swap.gfx_icon,0) -- Add Weapon (0 uses)
function cc.swap.draw() -- Draw
if weapon_shots==0 then
setblend(blend_alpha)
setalpha(1)
setcolor(255,255,255)
drawinhand(cc.swap.gfx_wpn,7,0)
-- HUD Positioning
hudinfo("Click a player to swap positions!")
hudpositioning(pos_invisible)
end
end
function cc.swap.attack(attack) -- Attack
if (weapon_shots<=0) and (weapon_position==1) then
if collision(colplayer,weapon_x,weapon_y,0,1,0)>0 then
if playercollision()>0 and playercollision()~=playercurrent() then
-- Use weapon and allow to use another one afterwards (1)
useweapon(1)
weapon_shots=weapon_shots+1
-- Get Position 1
weapon_x=getplayerx(playercollision())
weapon_y=getplayery(playercollision())
-- Get Position 2
oldx=getplayerx(0)
oldy=getplayery(0)
-- FX
playsound(cc.swap.sfx_superteleport)
for i=1,2,1 do
if i==1 then
x=oldx
y=oldy+3
else
x=weapon_x
y=weapon_y+3
end
particle(p_muzzle,x,y)
particlesize(1,1)
particlecolor(255,200,50)
particlealpha(1.0)
particlefadealpha(0.01)
particle(p_muzzle,x,y)
particlesize(1,3)
particlecolor(255,200,50)
particlealpha(1.0)
particlefadealpha(0.02)
particlerotation(0)
for j=1,10,1 do
particle(p_flare,x-10.0+math.random()*20.0,y+math.random()*10.0)
particlesize(3.0,3.0)
particlecolor(255,200,50)
particlespeed(0,math.random(1,3)*-1.0)
particlefadealpha(0.01)
end
end
-- Swap Positions
playerposition(0,weapon_x,weapon_y)
playerposition(playercollision(),oldx,oldy)
else
weapon_position=0
end
else
weapon_position=0
end
end
end